﻿

using SDK.Core;
using SqlSugar;

namespace SDK.SqlSugar.Configuration
{
    public interface ISqlSugarSdkConfig : ISdkConfig
    {
        DbType DbType { get; set; }
        string ConnectionString { get; set; }
        bool IsAutoCloseConnection { get; set; }
        InitKeyType InitKeyType { get; set; }

        ConfigureExternalServices ConfigureExternalServices { get; set; }

        Action<DiffLogModel> OnDiffLogEvent { get; set; }
        Action<SqlSugarException> OnError { get; set; }
        Action<string, SugarParameter[]> OnLogExecuting { get; set; }
        Action<string, SugarParameter[]> OnLogExecuted { get; set; }
        Func<string, SugarParameter[], KeyValuePair<string, SugarParameter[]>> OnExecutingChangeSql { get; set; }
    }
}
